function dXdt = cnn(t, X, a, b, alpha, beta, gamma, Im, F)
    % cnn - 扩展系统的 ODE 函数
    % 输入 X = [q; sigma; phi; v1; v2; v3]，其中主系统状态 Y = [q; sigma; phi]
    % v 是扰动向量。
    
    % 分离主系统和微扰向量
    Y = X(1:3);
    v = X(4:6);
    
    % 主系统状态
    q     = Y(1);
    sigma = Y(2);
    phi   = Y(3);
    
    % 计算 V_x = (alpha + beta*sigma)*q
    Vx = (alpha + beta * sigma) * q;
    
    % 外激励信号
    Iext = Im * sin(2*pi*F*t);
    
    % memristor 的非线性函数：G_M = phi^2 - 0.5
    G_M = phi^2 - 0.5;
    
    % 主系统微分方程（模型 (5)）
    f1 = Iext - G_M*Vx + a*abs(Vx) + b*Vx;
    f2 = q - sigma;
    f3 = gamma*Vx + tanh(phi) - phi;
    f  = [f1; f2; f3];
    
    % 计算雅可比矩阵 J = ∂f/∂Y (3×3)
    % 注意：Vx = (alpha + beta*sigma)*q
    dVx_dq     = alpha + beta*sigma;
    dVx_dsigma = beta*q;
    
    % 对 f1：
    % f1 = Iext - G_M*Vx + a*|Vx| + b*Vx, 且 G_M = phi^2 - 0.5, dG_M/dphi = 2*phi
    J11 = -G_M*dVx_dq + (a*sign(Vx) + b)*dVx_dq;
    J12 = -G_M*dVx_dsigma + (a*sign(Vx) + b)*dVx_dsigma;
    J13 = - (2*phi)*Vx;
    
    % 对 f2 = q - sigma
    J21 = 1;  J22 = -1;  J23 = 0;
    
    % 对 f3 = gamma*Vx + tanh(phi) - phi
    J31 = gamma*dVx_dq;
    J32 = gamma*dVx_dsigma;
    J33 = sech(phi)^2 - 1;  % 注意：d/dphi[tanh(phi)-phi] = sech(phi)^2 - 1
    
    J = [J11, J12, J13;
         J21, J22, J23;
         J31, J32, J33];
    
    % 扰动向量微分方程：dv/dt = J*v
    dv_dt = J*v;
    
    % 合并主系统与扰动向量的方程
    dXdt = [f; dv_dt];
end
